#ifndef _FILEREADIMPL_H_
#define _FILEREADIMPL_H_

#include "stdafx.h"
#include <io/iasynio.h>

#include "ioimpl/file.h"

class CFileReadImpl :	public	IReadFile,
						public	CUnknownImp
{
public:
	CFileReadImpl(void);
	virtual ~CFileReadImpl(void);
	UNKNOWN_IMP1(IReadFile);
	//////////////////////////////////////////////////////////////////////////
	std_method(LoadFile)(const TCHAR* pszLoadFile,
		unsigned long ulwDesiredAccess,
		unsigned long ulShareMode,
		unsigned long ulCreationDisposition,
		unsigned long ulFlagsAndAttributes);
	std_method(CloseFile)();
	std_method_(os_int64,GetFileSize)();
	std_method(ReadBuffer)(char* szBuffer, os_int64 ulReadFileLen, os_int64* ulReadSize);
	std_method(AsynReadBuffer)(const char* szNodeName,char* szNodeInfo);
private:
	os_fd_t		m_hFile;
	FileImpl	m_FileOpt;

};
#endif
